import re

def filter_numbers(arr):
    # 过滤出数组中所有仅包含数字的元素
    return [item for item in arr if not re.match(r'^\d+$', item)]

def filter_letters(arr):
    # 过滤出数组中所有仅包含字母的元素
    return [item for item in arr if not re.match(r'^[a-zA-Z]+$', item)]

def filter_startswith(arr, letter):
    # 过滤列表中以指定字母开头的元素
    return [item for item in arr if not item.startswith(letter)]

# 打开文件并读取内容
file_path = 'example.txt'  # 文件路径

try:
    with open(file_path, 'r', encoding='utf-8') as file:
        content = file.read()
        # print(content)
        # 使用正则表达式匹配内容中的字母和数字
        pattern = re.compile(r'[a-zA-Z0-9]+')
        # 查找所有匹配的字母和数字
        result = pattern.findall(content)
        # 过滤出字母
        result2 = filter_letters(result)
        # 过滤出数字
        result3 = filter_numbers(result2)

        # 过滤以特定字符串开头的元素
        result4 = filter_startswith(result3,"x")

        new_array = [f'player.additem  {element} 999' for element in result4]
        # 打印最终结果
        print(new_array)
        with open('output.txt', 'w') as file:
            # 遍历列表中的每个元素
            for element in new_array:
                # 将每个元素作为新行写入文件
                file.write(element + '\n')

except FileNotFoundError:
    print(f"文件 {file_path} 未找到。")
except IOError:
    print(f"读取文件 {file_path} 时发生错误。")